package com.tcfvic.client.pojos;
// Generated 29/03/2010 9:10:02 PM by Hibernate Tools 3.1.0.beta4

import java.util.Date;
import java.util.HashSet;
import java.util.Set;
import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.OneToMany;
import javax.persistence.Table;


/**
 * Person generated by hbm2java
 */
@Entity
@Table(name="person"
    
, uniqueConstraints = {  }
)

public class Person  implements java.io.Serializable {


    // Fields    

     private int id;
     private String title;
     private String firstname;
     private String preferredname;
     private String secondname;
     private String surname;
     private String mobile;
     private String landline;
     private String email;
     private Date dateofbirth;
     private String gender;
     private String languagesathome;
     private String languagesatwork;
     private Integer numberchildren;
     private Integer ageofyoungestchild;
     private String unionMemberNo;
     private String carerstatus;
     private String carerFtpt;
     private String driverslicense;
     private Date dateofmigration;
     private String notes;
     private String timeoffafterretrechment;
     private String injurysicknessreason;
     private String countryOfOrigin;
     private String natureOfIllness;
     private String formalEdHighLevel;
     private String formalEdCountry;
     private String postSecHighLevel;
     private String postSecCountry;
     private String license1;
     private String license2;
     private String license3;
     private String license4;
     private String firstLanguage;
     private String secLanguage;
     private String thirdLanguage;
     private String englishListening;
     private String englishSpeaking;
     private String englishReading;
     private String englishWriting;
     private String display;
     private Set<Personfundingsource> personfundingsources = new HashSet<Personfundingsource>(0);
     private Set<Personaddress> personaddresses = new HashSet<Personaddress>(0);
     private Set<Personcourse> personcourses = new HashSet<Personcourse>(0);
     private Set<Expense> expenses = new HashSet<Expense>(0);
     private Set<Personjsp> personjsps = new HashSet<Personjsp>(0);
     private Set<Employmentdetails> employmentdetailses = new HashSet<Employmentdetails>(0);


    // Constructors

    /** default constructor */
    public Person() {
    }

	/** minimal constructor */
    public Person(int id, String firstname, String surname) {
        this.id = id;
        this.firstname = firstname;
        this.surname = surname;
    }
    
    /** full constructor */
    public Person(int id, String title, String firstname, String preferredname, String secondname, String surname, String mobile, String landline, String email, Date dateofbirth, String gender, String languagesathome, String languagesatwork, Integer numberchildren, Integer ageofyoungestchild, String unionMemberNo, String carerstatus, String carerFtpt, String driverslicense, Date dateofmigration, String notes, String timeoffafterretrechment, String injurysicknessreason, String countryOfOrigin, String natureOfIllness, String formalEdHighLevel, String formalEdCountry, String postSecHighLevel, String postSecCountry, String license1, String license2, String license3, String license4, String firstLanguage, String secLanguage, String thirdLanguage, String englishListening, String englishSpeaking, String englishReading, String englishWriting, String display, Set<Personfundingsource> personfundingsources, Set<Personaddress> personaddresses, Set<Personcourse> personcourses, Set<Expense> expenses, Set<Personjsp> personjsps, Set<Employmentdetails> employmentdetailses) {
        this.id = id;
        this.title = title;
        this.firstname = firstname;
        this.preferredname = preferredname;
        this.secondname = secondname;
        this.surname = surname;
        this.mobile = mobile;
        this.landline = landline;
        this.email = email;
        this.dateofbirth = dateofbirth;
        this.gender = gender;
        this.languagesathome = languagesathome;
        this.languagesatwork = languagesatwork;
        this.numberchildren = numberchildren;
        this.ageofyoungestchild = ageofyoungestchild;
        this.unionMemberNo = unionMemberNo;
        this.carerstatus = carerstatus;
        this.carerFtpt = carerFtpt;
        this.driverslicense = driverslicense;
        this.dateofmigration = dateofmigration;
        this.notes = notes;
        this.timeoffafterretrechment = timeoffafterretrechment;
        this.injurysicknessreason = injurysicknessreason;
        this.countryOfOrigin = countryOfOrigin;
        this.natureOfIllness = natureOfIllness;
        this.formalEdHighLevel = formalEdHighLevel;
        this.formalEdCountry = formalEdCountry;
        this.postSecHighLevel = postSecHighLevel;
        this.postSecCountry = postSecCountry;
        this.license1 = license1;
        this.license2 = license2;
        this.license3 = license3;
        this.license4 = license4;
        this.firstLanguage = firstLanguage;
        this.secLanguage = secLanguage;
        this.thirdLanguage = thirdLanguage;
        this.englishListening = englishListening;
        this.englishSpeaking = englishSpeaking;
        this.englishReading = englishReading;
        this.englishWriting = englishWriting;
        this.personfundingsources = personfundingsources;
        this.personaddresses = personaddresses;
        this.personcourses = personcourses;
        this.expenses = expenses;
        this.personjsps = personjsps;
        this.employmentdetailses = employmentdetailses;
        this.setDisplay(display);
    }
    

   
    // Property accessors
    @Id
    @Column(name="id", unique=true, nullable=false, insertable=true, updatable=true)
@GeneratedValue(strategy=GenerationType.AUTO)

    public int getId() {
        return this.id;
    }
    
    public void setId(int id) {
        this.id = id;
    }
    @Column(name="title", unique=false, nullable=true, insertable=true, updatable=true, length=45)

    public String getTitle() {
        return this.title;
    }
    
    public void setTitle(String title) {
        this.title = title;
    }
    @Column(name="firstname", unique=false, nullable=false, insertable=true, updatable=true, length=100)

    public String getFirstname() {
        return this.firstname;
    }
    
    public void setFirstname(String firstname) {
        this.firstname = firstname;
    }
    @Column(name="preferredname", unique=false, nullable=true, insertable=true, updatable=true, length=45)

    public String getPreferredname() {
        return this.preferredname;
    }
    
    public void setPreferredname(String preferredname) {
        this.preferredname = preferredname;
    }
    @Column(name="secondname", unique=false, nullable=true, insertable=true, updatable=true, length=45)

    public String getSecondname() {
        return this.secondname;
    }
    
    public void setSecondname(String secondname) {
        this.secondname = secondname;
    }
    @Column(name="surname", unique=false, nullable=false, insertable=true, updatable=true, length=100)

    public String getSurname() {
        return this.surname;
    }
    
    public void setSurname(String surname) {
        this.surname = surname;
    }
    @Column(name="mobile", unique=false, nullable=true, insertable=true, updatable=true, length=45)

    public String getMobile() {
        return this.mobile;
    }
    
    public void setMobile(String mobile) {
        this.mobile = mobile;
    }
    @Column(name="landline", unique=false, nullable=true, insertable=true, updatable=true, length=45)

    public String getLandline() {
        return this.landline;
    }
    
    public void setLandline(String landline) {
        this.landline = landline;
    }
    @Column(name="email", unique=false, nullable=true, insertable=true, updatable=true, length=100)

    public String getEmail() {
        return this.email;
    }
    
    public void setEmail(String email) {
        this.email = email;
    }
    @Column(name="dateofbirth", unique=false, nullable=true, insertable=true, updatable=true, length=10)

    public Date getDateofbirth() {
        return this.dateofbirth;
    }
    
    public void setDateofbirth(Date dateofbirth) {
        this.dateofbirth = dateofbirth;
    }
    @Column(name="gender", unique=false, nullable=true, insertable=true, updatable=true, length=1)

    public String getGender() {
        return this.gender;
    }
    
    public void setGender(String gender) {
        this.gender = gender;
    }
    @Column(name="languagesathome", unique=false, nullable=true, insertable=true, updatable=true, length=200)

    public String getLanguagesathome() {
        return this.languagesathome;
    }
    
    public void setLanguagesathome(String languagesathome) {
        this.languagesathome = languagesathome;
    }
    @Column(name="languagesatwork", unique=false, nullable=true, insertable=true, updatable=true, length=200)

    public String getLanguagesatwork() {
        return this.languagesatwork;
    }
    
    public void setLanguagesatwork(String languagesatwork) {
        this.languagesatwork = languagesatwork;
    }
    @Column(name="numberchildren", unique=false, nullable=true, insertable=true, updatable=true)

    public Integer getNumberchildren() {
        return this.numberchildren;
    }
    
    public void setNumberchildren(Integer numberchildren) {
        this.numberchildren = numberchildren;
    }
    @Column(name="ageofyoungestchild", unique=false, nullable=true, insertable=true, updatable=true)

    public Integer getAgeofyoungestchild() {
        return this.ageofyoungestchild;
    }
    
    public void setAgeofyoungestchild(Integer ageofyoungestchild) {
        this.ageofyoungestchild = ageofyoungestchild;
    }
    @Column(name="unionMemberNo", unique=false, nullable=true, insertable=true, updatable=true, length=45)

    public String getUnionMemberNo() {
        return this.unionMemberNo;
    }
    
    public void setUnionMemberNo(String unionMemberNo) {
        this.unionMemberNo = unionMemberNo;
    }
    @Column(name="carerstatus", unique=false, nullable=true, insertable=true, updatable=true, length=45)

    public String getCarerstatus() {
        return this.carerstatus;
    }
    
    public void setCarerstatus(String carerstatus) {
        this.carerstatus = carerstatus;
    }
    @Column(name="carerFTPT", unique=false, nullable=true, insertable=true, updatable=true, length=45)

    public String getCarerFtpt() {
        return this.carerFtpt;
    }
    
    public void setCarerFtpt(String carerFtpt) {
        this.carerFtpt = carerFtpt;
    }
    @Column(name="driverslicense", unique=false, nullable=true, insertable=true, updatable=true, length=45)

    public String getDriverslicense() {
        return this.driverslicense;
    }
    
    public void setDriverslicense(String driverslicense) {
        this.driverslicense = driverslicense;
    }
    @Column(name="dateofmigration", unique=false, nullable=true, insertable=true, updatable=true, length=10)

    public Date getDateofmigration() {
        return this.dateofmigration;
    }
    
    public void setDateofmigration(Date dateofmigration) {
        this.dateofmigration = dateofmigration;
    }
    @Column(name="notes", unique=false, nullable=true, insertable=true, updatable=true, length=4500)

    public String getNotes() {
        return this.notes;
    }
    
    public void setNotes(String notes) {
        this.notes = notes;
    }
    @Column(name="timeoffafterretrechment", unique=false, nullable=true, insertable=true, updatable=true, length=45)

    public String getTimeoffafterretrechment() {
        return this.timeoffafterretrechment;
    }
    
    public void setTimeoffafterretrechment(String timeoffafterretrechment) {
        this.timeoffafterretrechment = timeoffafterretrechment;
    }
    @Column(name="injurysicknessreason", unique=false, nullable=true, insertable=true, updatable=true, length=4500)

    public String getInjurysicknessreason() {
        return this.injurysicknessreason;
    }
    
    public void setInjurysicknessreason(String injurysicknessreason) {
        this.injurysicknessreason = injurysicknessreason;
    }
    @Column(name="countryOfOrigin", unique=false, nullable=true, insertable=true, updatable=true, length=60)

    public String getCountryOfOrigin() {
        return this.countryOfOrigin;
    }
    
    public void setCountryOfOrigin(String countryOfOrigin) {
        this.countryOfOrigin = countryOfOrigin;
    }
    @Column(name="natureOfIllness", unique=false, nullable=true, insertable=true, updatable=true, length=4500)

    public String getNatureOfIllness() {
        return this.natureOfIllness;
    }
    
    public void setNatureOfIllness(String natureOfIllness) {
        this.natureOfIllness = natureOfIllness;
    }
    @Column(name="formalEdHighLevel", unique=false, nullable=true, insertable=true, updatable=true, length=450)

    public String getFormalEdHighLevel() {
        return this.formalEdHighLevel;
    }
    
    public void setFormalEdHighLevel(String formalEdHighLevel) {
        this.formalEdHighLevel = formalEdHighLevel;
    }
    @Column(name="formalEdCountry", unique=false, nullable=true, insertable=true, updatable=true, length=100)

    public String getFormalEdCountry() {
        return this.formalEdCountry;
    }
    
    public void setFormalEdCountry(String formalEdCountry) {
        this.formalEdCountry = formalEdCountry;
    }
    @Column(name="postSecHighLevel", unique=false, nullable=true, insertable=true, updatable=true, length=450)

    public String getPostSecHighLevel() {
        return this.postSecHighLevel;
    }
    
    public void setPostSecHighLevel(String postSecHighLevel) {
        this.postSecHighLevel = postSecHighLevel;
    }
    @Column(name="postSecCountry", unique=false, nullable=true, insertable=true, updatable=true, length=100)

    public String getPostSecCountry() {
        return this.postSecCountry;
    }
    
    public void setPostSecCountry(String postSecCountry) {
        this.postSecCountry = postSecCountry;
    }
    @Column(name="license1", unique=false, nullable=true, insertable=true, updatable=true, length=100)

    public String getLicense1() {
        return this.license1;
    }
    
    public void setLicense1(String license1) {
        this.license1 = license1;
    }
    @Column(name="license2", unique=false, nullable=true, insertable=true, updatable=true, length=100)

    public String getLicense2() {
        return this.license2;
    }
    
    public void setLicense2(String license2) {
        this.license2 = license2;
    }
    @Column(name="license3", unique=false, nullable=true, insertable=true, updatable=true, length=100)

    public String getLicense3() {
        return this.license3;
    }
    
    public void setLicense3(String license3) {
        this.license3 = license3;
    }
    @Column(name="license4", unique=false, nullable=true, insertable=true, updatable=true, length=100)

    public String getLicense4() {
        return this.license4;
    }
    
    public void setLicense4(String license4) {
        this.license4 = license4;
    }
    @Column(name="firstLanguage", unique=false, nullable=true, insertable=true, updatable=true, length=100)

    public String getFirstLanguage() {
        return this.firstLanguage;
    }
    
    public void setFirstLanguage(String firstLanguage) {
        this.firstLanguage = firstLanguage;
    }
    @Column(name="secLanguage", unique=false, nullable=true, insertable=true, updatable=true, length=100)

    public String getSecLanguage() {
        return this.secLanguage;
    }
    
    public void setSecLanguage(String secLanguage) {
        this.secLanguage = secLanguage;
    }
    @Column(name="thirdLanguage", unique=false, nullable=true, insertable=true, updatable=true, length=100)

    public String getThirdLanguage() {
        return this.thirdLanguage;
    }
    
    public void setThirdLanguage(String thirdLanguage) {
        this.thirdLanguage = thirdLanguage;
    }
    @Column(name="englishListening", unique=false, nullable=true, insertable=true, updatable=true, length=45)

    public String getEnglishListening() {
        return this.englishListening;
    }
    
    public void setEnglishListening(String englishListening) {
        this.englishListening = englishListening;
    }
    @Column(name="englishSpeaking", unique=false, nullable=true, insertable=true, updatable=true, length=45)

    public String getEnglishSpeaking() {
        return this.englishSpeaking;
    }
    
    public void setEnglishSpeaking(String englishSpeaking) {
        this.englishSpeaking = englishSpeaking;
    }
    @Column(name="englishReading", unique=false, nullable=true, insertable=true, updatable=true, length=45)

    public String getEnglishReading() {
        return this.englishReading;
    }
    
    public void setEnglishReading(String englishReading) {
        this.englishReading = englishReading;
    }
    @Column(name="englishWriting", unique=false, nullable=true, insertable=true, updatable=true, length=45)

    public String getEnglishWriting() {
        return this.englishWriting;
    }
    
    public void setEnglishWriting(String englishWriting) {
        this.englishWriting = englishWriting;
    }
    @OneToMany(cascade={}, fetch=FetchType.LAZY, mappedBy="person")

    public Set<Personfundingsource> getPersonfundingsources() {
        return this.personfundingsources;
    }
    
    public void setPersonfundingsources(Set<Personfundingsource> personfundingsources) {
        this.personfundingsources = personfundingsources;
    }
    @OneToMany(cascade={}, fetch=FetchType.LAZY, mappedBy="person")

    public Set<Personaddress> getPersonaddresses() {
        return this.personaddresses;
    }
    
    public void setPersonaddresses(Set<Personaddress> personaddresses) {
        this.personaddresses = personaddresses;
    }
    @OneToMany(cascade={}, fetch=FetchType.LAZY, mappedBy="person")

    public Set<Personcourse> getPersoncourses() {
        return this.personcourses;
    }
    
    public void setPersoncourses(Set<Personcourse> personcourses) {
        this.personcourses = personcourses;
    }
    @OneToMany(cascade={}, fetch=FetchType.LAZY, mappedBy="person")

    public Set<Expense> getExpenses() {
        return this.expenses;
    }
    
    public void setExpenses(Set<Expense> expenses) {
        this.expenses = expenses;
    }
    @OneToMany(cascade={}, fetch=FetchType.LAZY, mappedBy="person")

    public Set<Personjsp> getPersonjsps() {
        return this.personjsps;
    }
    
    public void setPersonjsps(Set<Personjsp> personjsps) {
        this.personjsps = personjsps;
    }
    @OneToMany(cascade={}, fetch=FetchType.LAZY, mappedBy="person")

    public Set<Employmentdetails> getEmploymentdetailses() {
        return this.employmentdetailses;
    }
    
    public void setEmploymentdetailses(Set<Employmentdetails> employmentdetailses) {
        this.employmentdetailses = employmentdetailses;
    }

	public void setDisplay(String display) {
		this.display = display;
	}

    @Column(name="display", unique=false, nullable=true, insertable=true, updatable=true, length=100)
	public String getDisplay() {
		return display;
	}

}
